package codeclz77.bean;

/**
 *
 * @author Douglas
 * 
 * Grupo de dados para poder representar o Triplet de codificação LZ77
 */
public class Triplet {
// Caracter para representar o final do Triplet
    private final char FIM_TRIPLET = '$';
 // Distância de onde encontrar a repetição da palavra (olha pra trás do buffer)  
    private char offset;
// Quantidade de símbolos  consecutivos no buffer do offset até limite do look-ahead
    private char matchLength;
// Símbolo codificado
    private char codeword;
/**
 * Triplet.
 * Construtor do método
 */    
    public Triplet(){

    }

/**
 * Construtor.
 * Constrói o método passando offset, match length e código
 * @param offset
 * @param matchLength
 * @param codeword 
 */
    public Triplet(char offset, char matchLength, char codeword) {
        this.offset = offset;
        this.matchLength = matchLength;
        this.codeword = codeword;
    }
    
    /**
     * @return the offset
     */
    public char getOffset() {
        return offset;
    }

    /**
     * @param offset the offset to set
     */
    public void setOffset(char offset) {
        this.offset = offset;
    }

    /**
     * @return the matchLength
     */
    public char getMatchLength() {
        return matchLength;
    }

    /**
     * @param matchLength the matchLength to set
     */
    public void setMatchLength(char matchLength) {
        this.matchLength = matchLength;
    }

    /**
     * @return the codeword
     */
    public char getCodeword() {
        return codeword;
    }

    /**
     * @param codeword the codeword to set
     */
    public void setCodeword(char codeword) {
        this.codeword = codeword;
    }
    
}
